#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define dbg(x) cerr << #x << " " << x << "\n";
int main() {
ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL);
ll n; cin >> n;
vector<vector<ll>> dp(27, vector<ll>(27, -1));
for(ll i=0; i<n; i++) {
string s; cin >> s;
ll fst = s[0] - 'a';
ll lst = s.back()-'a';
ll len = s.length();
for(ll j=0; j<26; j++) {
if(dp[j][fst] != -1) {
dp[j][lst] = max(dp[j][fst] + len, dp[j][lst]);
}
}
dp[fst][lst]=max(dp[fst][lst],len);
}
ll ans = 0;
for(ll i=0; i<26; i++) {
ans = max(ans, dp[i][i]);
}
cout << ans << "\n";
}
1389. Create Target Array in the Given Order | 1313. Decompress Run-Length Encoded List |
1281. Subtract the Product and Sum of Digits of an Integer | 1342. Number of Steps to Reduce a Number to Zero |
1528. Shuffle String | 1365. How Many Numbers Are Smaller Than the Current Number |
771. Jewels and Stones | 1512. Number of Good Pairs |
672. Richest Customer Wealth | 1470. Shuffle the Array |
1431. Kids With the Greatest Number of Candies | 1480. Running Sum of 1d Array |
682. Baseball Game | 496. Next Greater Element I |
232. Implement Queue using Stacks | 844. Backspace String Compare |
20. Valid Parentheses | 746. Min Cost Climbing Stairs |
392. Is Subsequence | 70. Climbing Stairs |
53. Maximum Subarray | 1527A. And Then There Were K |
1689. Partitioning Into Minimum Number Of Deci-Binary Numbers | 318. Maximum Product of Word Lengths |
448. Find All Numbers Disappeared in an Array | 1155. Number of Dice Rolls With Target Sum |
415. Add Strings | 22. Generate Parentheses |
13. Roman to Integer | 2. Add Two Numbers |